<?php
class Area {
    
    private $idarea;
    private $desc_area;
    
    //variaveis internas
    private $bd; //conexão com o banco
    //private $tabela; //nome da tabela LINHA DE CÓDIGO DESNECESSÁRIA - RICARDO25/08/14

    public function __construct() {
        $this->bd = new BD();
        //$this->tabela = "area";                      // mudar
    }

    public function __get($key) {
        return $this->$key;
    }

    //método de retorno de valores do objeto 
    public function __set($key, $value) {
        $this->$key = $value;
    }

    //METODOS 
    //BANCO DE DADOS
    public function inserir() {
        
        $sql = "INSERT INTO area (desc_area ) 
               values ('$this->desc_area'  )";
        $retorno = pg_query($sql);
        return $retorno;
    }
       
// --------------------------------------------------------------------------    
    public function listar($complemento = "") {
        $sql = "SELECT * FROM area ". $complemento;

        $resultado = pg_query($sql);

        $retorno = NULL;
        //percorre os registros
        while ($reg = pg_fetch_assoc($resultado)) {
            //transforma em objetos categoria
            $obj = new Area();                                    //mudar 
            $obj->idarea       = $reg["idarea"];
            $obj->desc_area    = $reg["desc_area"];
            
            //adiciona a variavel de retorno
            $retorno[] = $obj;   
        }
        
        return $retorno;
    }
 
// --------------------------------------------------------------------------    
    public function excluir() {
        
        $sql = "DELETE FROM area WHERE idarea =$this->idarea";
        $retorno = pg_query($sql);
        return $retorno;
    }

// --------------------------------------------------------------------------    
    public function atualizar() {
        $retorno = false;                                 // nome dos atributos 
        $sql = "UPDATE area SET 
                     desc_area   ='$this->desc_area'   
                     WHERE idarea='$this->idarea'";

        $retorno = pg_query($sql);
        return $retorno;
    }


// --------------------------------------------------------------------------
    public function retornarunico() {
        $sql = "SELECT * FROM area WHERE idarea='$this->idarea'";

        $resultado = pg_query($sql);            
        $retorno = NULL;

        $req = pg_fetch_assoc($resultado);
        if ($req == true) {                              
            $obj = new Area();
            $obj->idarea = $req["idarea"];        
            $obj->desc_area = $req["desc_area"];               
            $retorno = $obj;
        } /*else {
            $retorno = null;
        }*/

        return $retorno;
    }
    
}


